非类型模板参数

非类型模板参数可以使用整型类型、指针或引用。绑定非类型整型形参的实参必须是常量表达式,不能把普通的局部变量或者动态对象绑定指针或引用的非类型,可以使用全局类型进行绑定。

1
2
3
4
5
6
template <const char* C>
void pointerT(const char* str) {
std::cout << C << " " << str << std::endl;
}
char ca[] = "test";
pointerT<ca>("hello");